<?php

namespace app\common\model\Post;

use think\Model;

// 评论的模型
class Comment extends Model
{
    // 指定表名
    protected $table = "pre_comment";

    // 加一个自动添加的时间戳 当插入语句进行的时候 会把当前时间自动添加到数据库
    // 开启写入时间戳
    protected $autoWriteTimestamp = true;

    // 设置自动添加的时间戳写入哪个字段
    protected $createTime = 'createtime';

    // 关闭自动写入
    protected $updateTime = false;

    // 每次查询的时候，追加一个自定义字段
    protected $append=[
        'like_total'
    ];

    // 关联查询  链表查询   左链表查询  帖子表->user用户表
    public function user()
    {
        //belongsTo 关联查询
        // belongsTo('关联模型名','外键名','关联表主键名',['模型别名定义'],'join类型');
        return $this->belongsTo('app\common\model\User\User', 'userid', 'id', [], 'LEFT')->setEagerlyType(0);
    }

    // 定义一个获取器   like_total
    public function getLikeTotalAttr($value, $data)
    {
        // 查询出，点赞的总数
        $like = $data['like'];

        $like = empty($like) ? [] : explode(',', $like);

        // 返回数组个数
        return count($like);
    }
}
